<%@page import="study.top.mydb.items.Category2Item"%>
<%@page import="study.top.mydb.Category2"%>
<%@page import="study.top.mydb.items.Category1Item"%>
<%@page import="study.top.mydb.Category1"%>
<%@page import="study.top.common.Util"%>
<%@page import="study.top.jsp.PageHandler"%>
<%@page import="study.top.mydb.items.ProductItem"%>
<%@page import="java.util.ArrayList"%>
<%@page import="study.top.mydb.Product"%>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page trimDirectiveWhitespaces="true" %>
<%@ page session="true" %>
<%@ include file="dbcon.jsp" %>
<%
	db.connect();
	int nowPage = web.getInt("page");
	int ca1seq = web.getInt("c1");
	int ca2seq = web.getInt("c2");
	
	String ca1path = "uProductList.jsp";
	String ca2path = "uProductList.jsp";
	
	Product product_list = new Product();
	ArrayList<ProductItem> pro_list = null;
	
	//Category1 ca1 = new Category1();
	Category2 ca_2 = new Category2();
	
	
	if(ca2seq > 0){
		pro_list = product_list.list(nowPage, ca1seq, ca2seq);
		ca1path += "?page=1&c1="+ca1seq;
		ca2path += "?page=1&c1="+ca1seq+"&c2="+ca2seq;
	}else if(ca1seq > 0){
		pro_list = product_list.list(nowPage, ca1seq);
		ca1path += "?page=1&c1="+ca1seq;
	}else{
		pro_list = product_list.list(nowPage);
	}
	
	PageHandler p_handler = PageHandler.getInstance();
	
	if(pro_list == null){
		web.goPage(null, "해당하는 상품이 없습니다.");
		return;
	}
	
	String keyword = request.getParameter("keyword");

	if(keyword == null){
		keyword = "";
	}
	
	
	// 검색어가 있을시
	if(!keyword.equals("")){
		keyword = new String(keyword.getBytes("ISO-8859-1"),"UTF-8");

		pro_list = product_list.list(keyword,nowPage);
		
		if(pro_list == null){
			String msg = "<script type='text/javascript'>"
					+ "alert('통신처리에 실패했습니다. 관리자에게 문의 바랍니다.');"
					+ "history.back(); </script>";
					
			out.print(msg);
			
			//즉시 수행 중단
			return;
		}
	}
	
	
	

%>
<!DOCTYPE html>
<html lang="ko">
<%@ include file ="topHead.jsp" %>

	<body>
	<%@ include file="topcategory.jsp" %>
	<div class="top-tab top-hidden-xs">
		<%@ include file="tab.jsp" %>
	</div>
		<div class="container" style="width: 70%;">
			<div class="page-header clearfix">
				<div class="pull-left top-hidden-xs">
					<%if(ca2seq > 0){
						Category2Item item = ca_2.show(ca1seq, ca2seq);
						
						db.disconnect();
						if(item == null){
							web.goPage("uProductList.jsp", "해당 상품이 없습니다.");
						}
						%>
					<a style="color: black;" href="uProductList.jsp">전체 상품</a> >
					<a style="color: black;" href="<%=ca1path%>"><%=item.getC1_name() %></a> >
					<a style="color: black;" href="<%=ca2path%>"><%=item.getC2_name() %></a>
					
				<%}else if(ca1seq > 0){ 
					Category1Item item = category1.show(ca1seq);
					
					db.disconnect();
					if(item == null){
						web.goPage("uProductList.jsp", "해당 상품이 없습니다.");
					}
				%>
					<a style="color: black;" href="uProductList.jsp">전체 상품</a> >
					<a style="color: black;" href="<%=ca1path%>"><%=item.getC1_name() %></a>
				<%}else{
					db.disconnect();
					%>
					<a style="color: black;" href="uProductList.jsp">전체 상품</a>
				<%} %>
				</div>
				<div class="pull-right top-hidden-xs">
				<form class="form-inline" mothod="get" action="uProductList.jsp"
					role="search">
					<div class="form-group">
					<% 
						if(keyword != null){
					%>
						<input type="text" class="form-control" placeholder="Search"
							name="keyword" value="<%=keyword%>" />
					<%}else{ %>
						<input type="text" class="form-control" placeholder="Search"
							name="keyword" />
					<%} %>
					</div>
					<button type="submit" class="btn btn-default">검색</button>
				</form>
			</div>
			</div>
			<div class="row">
<% 
	for(int i=0; i<pro_list.size(); i++){
		ProductItem item = pro_list.get(i);
%>

				<div class="col-lg-4 col-md-4 col-sm-6 col-xs-12 top-center">
					<!-- 게시물 하나 시작 -->
					<div class="thumbnail" style="height: 400px; min-width: 200px; max-width: 200px;">
						<a href="uProductDetailView.jsp?active=S&seq=<%=item.getSeq()%>" data-lightbox="roadtrip" title="<%=item.getTitle() %>">
							<img alt="<%=item.getDecription()%>" class="img-responsive" 
							src="<%=item.getImgurl()%>" align="bottom" draggable="true" height="100%" width="100%">
						</a>
						<div class="caption">
							<p>
								<a href="uProductDetailView.jsp?active=S&seq=<%=item.getSeq()%>" style=" color: black;">
									<%=item.getTitle()%>
								</a>
							<p>
								<i class="glyphicon"></i><%=item.getPrice_min() %>원
							</p>
						</div>
					</div>
					<!-- 게시물 하나 끝 -->
				</div>
<%
	}
db.disconnect();
%>



			</div>
			<!-- 페이지 구현 -->
			<!-- 페이지 구현 -->
		<div class="text-center">
			<ul class="pagination pagination-centered">
<%
	// 이전 페이지 그룹 링크
	// --> 현재 페이지가 1페이지의 그룹 수 보다 작다면 첫 그룹이므로
	//     링크  비활성화
	if(p_handler.getNowPage() <= p_handler.getPageGroupCount()){
%>
				<li class="disabled"><a href="#">&laquo;</a></li>
<%
	}else{
		// 그렇지 않다면, 이전 페이지 그룹의 마지막 페이지로 링크 생성
		int prevPage = p_handler.getStartPage() -1;
		if(ca2seq > 0){
%>
				<li><a href="uProductList.jsp?page=<%=prevPage%>&c1=<%=ca1seq%>&c2=<%=ca2seq%>">&laquo;</a></li>
<%		}else if(ca1seq > 0){ %>
				<li><a href="uProductList.jsp?page=<%=prevPage%>&c1=<%=ca1seq%>">&laquo;</a></li>
<%
		}else{
%>
				<li><a href="uProductList.jsp?page=<%=prevPage%>">&laquo;</a></li>
<%
		}
	}
%>

<%
	// 현재 페이지 그룹의 첫 페이지부터 마지막 페이지까지 반복 처리
	for(int i=p_handler.getStartPage();
			i<=p_handler.getEndPage(); i++){
		String classAttr = "";
		if(i==p_handler.getNowPage()){
			classAttr = "class='active'";
		}
		if(ca2seq > 0){
%>
				<li <%=classAttr%>><a href="uProductList.jsp?page=<%=i%>&c1=<%=ca1seq%>&c2=<%=ca2seq%>"><%=i%></a></li>
<%		}else if(ca1seq > 0){ %>
				<li <%=classAttr%>><a href="uProductList.jsp?page=<%=i%>&c1=<%=ca1seq%>"><%=i%></a></li>
<%
		}else{
%>
				<li <%=classAttr%>><a href="uProductList.jsp?page=<%=i%>"><%=i%></a></li>
<%
		}
	}
%>
<%
	// 현재 페이지가 첫 마지막 페이지 그룹의 첫 페이지보다 크거나 같다면,
	// 다음 페이지로 이동할 수 없다.
	if(p_handler.getNowPage() >= p_handler.getLastGroupFirstPage()){
%>
				<li class="disabled"><a href="#">&raquo;</a></li>
<%
	}else{
		// 그렇지 않다면, 현재 그룹의 마지막페이지+1 --> 다음 그룹의 첫 페이지로
		// 이동할 링크 생성
		int nextPage = p_handler.getEndPage() + 1;
		if(ca2seq > 0){
%>		
				<li><a href="uProductList.jsp?page=<%=nextPage%>&c1=<%=ca1seq%>&c2=<%=ca2seq%>">&raquo;</a></li>
<%		}else if(ca1seq > 0){ %>
				<li><a href="uProductList.jsp?page=<%=nextPage%>&c1=<%=ca1seq%>">&raquo;</a></li>
<%
		}else{
%>
				<li><a href="uProductList.jsp?page=<%=nextPage%>">&raquo;</a></li>
<%
		}
	}
%>
			</ul>
		</div>



			<!--// 페이지 구현 -->
		</div>
		<div class="top-hidden-xs">
			<%@ include file="topBottom.jsp" %>
		</div>
		<!-- 플러그인 -->
		<script src="assets/js/lightbox-2.6.min.js"></script>
		<link rel="stylesheet" type="text/css" href="assets/css/lightbox.css" />
	</body>
</html>